package com.zbkj.crmeb.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.crmeb.core.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.category.vo.CategoryTreeVo;
import com.zbkj.crmeb.system.model.SystemRole;
import com.zbkj.crmeb.system.request.SystemRoleSearchRequest;

import java.util.List;

/**
* @author Mr.Zhang
* @Description SystemRoleService 接口
* @since 2020-04-18
*/
public interface SystemRoleService extends IService<SystemRole> {

    List<SystemRole> getList(SystemRoleSearchRequest request, PageParamRequest pageParamRequest);

    /**
     * 根据id集合获取对应权限列表
     * @param ids id集合
     * @return 对应的权限列表
     */
    List<SystemRole> getListInIds(List<Integer> ids);

    Boolean checkAuth(String uri);

    List<CategoryTreeVo> menu();

    List<CategoryTreeVo> blackMenu();

    CommonResult<String> deleteById(Integer id);
    
    Boolean saveByEntity(SystemRole systemRole);
    
    Boolean updateByEntity(SystemRole systemRole);
    
    /**
     * 删除商户角色
     * @author daigb
     * @date:  2022-12-01 10:54
     */
    Boolean saveByMer(SystemRole systemRole);
    
    Boolean updateByMer(SystemRole systemRole);
    
    Boolean deleteById2Mer(Integer id, Integer merId);
    
}
